1. Field of the Invention
The present invention relates to satellite positioning systems and, more particularly, to a method and apparatus for a method and apparatus for computing position using instantaneous Doppler measurements from satellites.
2. Description of the Background Art
Satellite Positioning System (SPS) receivers use measurements from several satellites to compute position. SPS receivers normally determine their position by computing time delays between transmission and reception of signals transmitted from satellites and received by the receiver on or near the surface of the earth. The time delays multiplied by the speed of light provide the distance from the receiver to each of the satellites that are in view of the receiver. Exemplary satellite positioning systems include the Global Positioning System (GPS), the European GALILEO system, and the Russian GLONASS system.
In GPS, each signal available for commercial use utilizes a direct sequence spreading signal defined by a unique pseudo-random noise (PN) code (referred to as the coarse acquisition (C/A) code) having a 1.023 MHz spread rate. Each PN code bi-phase modulates a 1575.42 MHz carrier signal (referred to as the L1 carrier) and uniquely identifies a particular satellite. The PN code sequence length is 1023 chips, corresponding to a one millisecond time period. One cycle of 1023 chips is called a PN frame or epoch.
GPS receivers determine the time delays between transmission and reception of the signals by comparing time shifts between the received PN code signal sequence and internally generated PN signal sequences. These measured time delays are referred to as “sub-millisecond pseudoranges,” since they are known modulo the 1 millisecond PN frame boundaries. If the data bit edges are identified for a particular satellite, then the pseudorange is known modulo the data bit period, for example, 20 ms in the current GPS system. Different satellite navigation systems, and future changes in the GPS system may give different data bit periods. In general, if a pseudorange is known modulo N ms, then we refer to it as a “fractional pseudorange”. By resolving the integer number of milliseconds associated with each delay to each satellite, then one has true, unambiguous, pseudoranges; referred to herein as “full pseudoranges” A set of four full pseudoranges together with knowledge of absolute times of transmission of the GPS signals and satellite positions in relation to these absolute times is sufficient to solve for the position of the GPS receiver. The absolute times of transmission (or reception) are needed in order to determine the positions of the GPS satellites at the times of transmission and hence to compute the position of the GPS receiver.
Accordingly, each of the GPS satellites broadcasts a model of satellite orbit and clock data known as the satellite navigation message. The satellite navigation message is a 50 bit-per-second (bps) data stream that is modulo-2 added to the PN code with bit boundaries aligned with the beginning of a PN frame. There are exactly 20 PN frames per data bit period (20 milliseconds). The satellite navigation message includes satellite-positioning data, known as “ephemeris” data, which identifies the satellites and their orbits, as well as absolute time information (also referred to herein as “GPS system time”) associated with the satellite signal. The GPS system time information is in the form of a second of the week signal, referred to as time-of-week (TOW). This absolute time signal allows the receiver to unambiguously determine a time tag for when each received signal was transmitted by each satellite.
GPS satellites move at approximately 3.9 km/s, and thus the range of the satellite, observed from the earth, changes at a rate of at most ±800 m/s. Absolute timing errors result in range errors of up to 0.8 m for each millisecond of timing error. These range errors produce a similarly sized error in the GPS receiver position. Hence, absolute time accuracy of 10 ms is sufficient for position accuracy of approximately 10 m. Absolute timing errors of much more than 10 ms will result in large position errors, and so typical GPS receivers have required absolute time to approximately 10 milliseconds accuracy or better.
Another time parameter closely associated with GPS positioning is the sub-millisecond offset in the time reference used to measure the sub-millisecond pseudorange. This offset affects all the measurements equally, and for this reason it is known as the “common mode error”. The common mode error should not be confused with the absolute time error. As discussed above, an absolute time error of 1 millisecond leads to range errors of up to 0.8 meters while an absolute time error of 1 microsecond would cause an almost unobservable range error of less than 1 millimeter. A common mode error of 1 microsecond, however, results in a pseudorange error of 1 microsecond multiplied by the speed of light (i.e., 300 meters). Common mode errors have a large effect on pseudorange computations, and it is, in practice, very difficult to calibrate the common mode error. As such, traditional GPS receivers treat the common mode error as an unknown that must be solved for, along with position, once a sufficient number of pseudoranges have been measured at a particular receiver.
If a GPS receiver has the correct absolute time, then, to date, one of the following conditions has been necessary to compute a first position fix: a) three full pseudoranges; or b) three factional pseudoranges plus known approximate position (to within 300 km). If there is no a-priori knowledge of altitude, then the necessary minimum number of pseudoranges becomes four.
In some GPS applications, the signal strengths of the satellite signals are so low that either the signals cannot be processed, or the time required to process the signals is excessive. For example, a GPS receiver may be operated in an urban canyon, where buildings or other obstructions block the line-of-sight of all but two or three satellites. In such an environment, conventional GPS receivers may not be able to uniquely determine a first position fix. Even with adequate line-of-sight view to the satellites, it may take several seconds to decode the TOW data from the satellite, which is required to get full pseudoranges in the absence of a known initial position.
Accordingly, there exists a need in the art for a method and apparatus that uniquely determines a first position fix of a GPS receiver without requiring full pseudoranges, or known initial position.